package cn.lili.modules.member.entity.dto;

import cn.lili.common.security.sensitive.Sensitive;
import cn.lili.common.security.sensitive.enums.SensitiveStrategy;
import cn.lili.common.validation.Mobile;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.Size;
import java.util.Date;

/**
 * 会员导出DTO
 */
@Data
public class MemberExportDTO {
    @ApiModelProperty(value = "用户名")
    private String username;

    @ApiModelProperty(value = "会员昵称")
    private String nickName;

    @ApiModelProperty(value = "用户性别,1为男，0为女,-1 未知")
    private Integer sex;

    @ApiModelProperty(value = "联系方式")
    private String mobile;

    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "注册时间")
    private Date createTime;

    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "最后登录时间")
    private Date lastLoginDate;

    @ApiModelProperty(value = "收货人姓名")
    private String name;

    @ApiModelProperty(value = "收货人电话")
    private String addressMobile;

    @ApiModelProperty(value = "地址")
    private String consigneeAddressPath;

    @ApiModelProperty(value = "详细地址")
    private String detail;

    @ApiModelProperty(value = "地址别名")
    private String alias;

    @ApiModelProperty(value = "是否为默认收货地址")
    private Boolean isDefault = false;
}
